Crate wiggle

source ·

Re-exports

Modules

Macros

  • This macro expands to a set of pub Rust modules:
  • Define the structs required to integrate a Wiggle implementation with Wasmtime.

Structs

  • A handle to a borrow on linear memory. It is produced by {mut, shared}_borrow and consumed by {mut, shared}_unborrow. Only the GuestMemory impl should ever construct a BorrowHandle or inspect its contents.
  • A guest pointer into host memory.
  • A smart pointer to an shareable slice in guest memory.
  • A smart pointer to a mutable slice in guest memory.
  • A smart pointer to an shareable str in guest memory. Usable as a &'a str via std::ops::Deref.
  • A smart pointer to a mutable str in guest memory. Usable as a &'a str via std::ops::Deref and as a &'a mut str via std::ops::DerefMut.
  • Represents a contiguous region in memory.
  • A smart pointer to an unsafe slice in guest memory.

Enums

  • A smart pointer for distinguishing between different kinds of Wasm memory: shared and non-shared.
  • A smart pointer to a str for distinguishing between different kinds of Wasm memory: shared and non-shared.

Traits

  • A trait for types which are used to report errors. Each type used in the first result position of an interface function is used, by convention, to indicate whether the function was successful and subsequent results are valid, or whether an error occured. This trait allows wiggle to return the correct value when the interface function’s idiomatic Rust method returns Ok().
  • A trait which abstracts how to get at the region of host memory that contains guest memory.
  • A trait for types that are intended to be pointees in GuestPtr<T>.
  • A trait for GuestTypes that have the same representation in guest memory as in Rust. These types can be used with the GuestPtr::as_slice method to view as a slice.
  • Types that can be pointed to by GuestPtr<T>.

Functions

Attribute Macros